/*
 * Tencent is pleased to support the open source community by making
 * Hippy available.
 *
 * Copyright (C) 2017-2022 THL A29 Limited, a Tencent company.
 * All rights reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

import * as rem from '../../src/util/rem';
import { setHippyCachedInstance } from '../../src/util/instance';
import { HippyElement } from '../../src/runtime/element/hippy-element';

/**
 * rem.ts unit test case
 */
describe('src/util/rem', () => {
  it('non rem value should return old value', () => {
    const root = new HippyElement('div');
    root.id = 'testRoot';
    setHippyCachedInstance({
      rootView: 'testRoot',
      rootViewId: 1,
      ratioBaseWidth: 750,
      // eslint-disable-next-line @typescript-eslint/ban-ts-comment
      // @ts-ignore
      instance: {
        $el: root,
      },
    });
    expect(rem.parseRemStyle('100px')).toEqual('100px');
    expect(rem.parseRemStyle(100)).toEqual(100);
    expect(rem.parseRemStyle('rem')).toEqual('rem');
    expect(rem.parseRemStyle('1.2rem')).toEqual(60);
  });
});
